The dynamic management of the consumption of a processor, for example a generic processor of GPP (“General Purpose Processor”) type, consists in adapting its voltage or its frequency so as to modulate the power provided by the processor as a function of the computational load required for the application that it is executing.
The processing operations implemented by a communication system may be grouped into two or more sets as a function of the computational load that they require. For example, a standby phase, the function of which is to detect a new communication, requires fewer operations per second than a data send or receive phase. Thus, a mode of consumption may be assigned to each of these phases as a function of the power delivered, low power mode for the standby phase, high power mode for the send or receive phases. The number of operations to be executed per unit time for each of these phases is predictable.
The transition from a low power mode to a high power mode is done with a significant latency which is in practice very penalizing when the intended application requires fast reaction times when passing from a processing phase with low computational power to a processing phase with high computational power. Moreover, the passage from one phase to another may result from the reception of exterior stimuli that are not predictable by the application itself. For example, the passage from a standby phase to a phase of receiving data is made when a technical word is received. This event is not predictable by the application or the processor itself. The latency induced by the changes of modes of consumption during the reception of these non-predictable stimuli prevents the execution of operations during this latency time and affects the associated processing. However, a maximum value of this latency is known.
The known solutions dealing with the problem of the use of DVFS techniques for managing the consumption of a processor are based more often than not on a prediction of the computation time inherent to a given phase of the executed application. These predictions are based on empirical models and do not take into account the occurrence of exterior stimuli as elements triggering a processing phase requiring a significant computational load. Neither do the prior art solutions deal with the drawback of the latency introduced during a transition between two modes of consumption.
The present invention proposes a solution making it possible to decide dynamically whether or not to pass from a mode of high consumption to a mode of low consumption (or vice versa) without impacting the nominal operation of the executed application, or impacting it with an evaluatable degradation.